home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Libris Britannia 4
/
science library(b).zip
/
science library(b)
/
INFO
/
BIOSDOS.ZIP
/
BIOSREF2.CRD
< prev
next >
Wrap
Text File
|
1987-08-13
|
48KB
|
364 lines
SAU
11 | 12 |
┌───────────────────────────┐ | ASCII TABLE |
│ INT 19 - BOOTSTRAP LOADER │ | |
└───────────────────────────┘ | ╔═════╦═════╦═════╦═════╦═════╦═════╦═════╦═════╗ |
| ║ 0 ║ 1 ║ 2 ║ 3 ║ 4 ║ 5 ║ 6 ║ 7 ║ |
INPUT PARAMETERS: NONE | ╔═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
OUTPUT PARAMETERS: NONE | ║0║ NUL ║ DLE ║SPACE║ 0 ║ @ ║ P ║ ` ║ p ║ |
OTHER: TRACK 0, SECTOR 1 IS LOADED INTO | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
ADDRESS 0:7C00 AND CONTROL IS | ║1║ SOH ║ DC1 ║ ! ║ 1 ║ A ║ Q ║ a ║ q ║ |
TRANSFERRED THERE | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
| ║2║ STX ║ DC2 ║ " ║ 2 ║ B ║ R ║ b ║ r ║ |
┌──────────────────────────────────────────┐ | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
│ INT 1A - SYSTEM AND REAL TIME CLOCK BIOS │ | ║3║ ETX ║ DC3 ║ # ║ 3 ║ C ║ S ║ c ║ s ║ |
└──────────────────────────────────────────┘ | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
| ║4║ EOT ║ DC4 ║ $ ║ 4 ║ D ║ T ║ d ║ t ║ |
INPUT PARAMETERS: | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
| ║5║ ENQ ║ NAK ║ % ║ 5 ║ E ║ U ║ e ║ u ║ |
AH = 00 - READ SYSTEM TIME COUNTER | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
ON EXIT: CX = HIGH PORTION OF COUNT | ║6║ ACK ║ SYN ║ & ║ 6 ║ F ║ V ║ f ║ v ║ |
DX = LOW PORTION OF COUNT | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
AL = 0 IF 24 HOURS NOT PASSED SINCE RESET | ║7║ BEL ║ ETB ║ ' ║ 7 ║ G ║ W ║ g ║ w ║ |
| ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
AH = 01 - SET SYSTEM TIME COUNTER | ║8║ BS ║ CAN ║ ( ║ 8 ║ H ║ X ║ h ║ x ║ |
CX = HIGH PORTION OF COUNT | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
DX = LOW PORTION OF COUNT | ║9║ HT ║ EM ║ ) ║ 9 ║ I ║ Y ║ i ║ y ║ |
| ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
AH = 02 - READ REAL TIME CLOCK TIME (PC/AT ONLY) | ║A║ LF ║ SUB ║ * ║ : ║ J ║ Z ║ j ║ z ║ |
ON EXIT: CH = HOURS IN BCD | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
CL = MINUTES IN BCD | ║B║ VT ║ ESC ║ + ║ ; ║ K ║ [ ║ k ║ { ║ |
DH = SECONDS IN BCD | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
DL = 1 IF DAYLIGHT SAVINGS TIME OPTION | ║C║ FF ║ FS ║ , ║ < ║ L ║ \ ║ l ║ | ║ |
CY = 1 IF CLOCK NOT OPERATING | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
| ║D║ CR ║ GS ║ - ║ = ║ M ║ ] ║ m ║ } ║ |
AH = 03 - SET REAL TIME CLOCK TIME (PC/AT ONLY) | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
CH = HOURS IN BCD | ║E║ SO ║ RS ║ . ║ > ║ N ║ ^ ║ n ║ ~ ║ |
CL = MINUTES IN BCD | ╠═╬═════╬═════╬═════╬═════╬═════╬═════╬═════╬═════╣ |
DH = SECONDS IN BCD | ║F║ SI ║ US ║ / ║ ? ║ O ║ _ ║ o ║ DEL ║ |
DL = 1 IF DAYLIGHT SAVINGS TIME OPTION | ╚═╩═════╩═════╩═════╩═════╩═════╩═════╩═════╩═════╝ |
| |
AH = 04 - READ REAL TIME CLOCK DATE (PC/AT ONLY) | |
ON EXIT: CH = CENTURY IN BCD | |
CL = YEAR IN BCD | COLOR ATTRIBUTES |
DH = MONTH IN BCD | |
DL = DAY IN BCD | 0 - BLACK 4 - RED 8 - GRAY C - LT. RED |
CY = 1 IF CLOCK NOT OPERATING | 1 - BLUE 5 - MAGENTA 9 - LT. BLUE D - LT. MAGENTA |
| 2 - GREEN 6 - BROWN A - LT. GREEN E - YELLOW |
AH = 05 - SET REAL TIME CLOCK DATE (PC/AT ONLY) | 3 - CYAN 7 - WHITE B - LT. CYAN F - BRIGHT WHITE |
CH = CENTURY IN BCD | |
CL = YEAR IN BCD | * NOTE: SET BIT 4 FOR BLINK |
DH = MONTH IN BCD | |
DL = DAY IN BCD | |
| |
AH = 06 - SET REAL TIME CLOCK ALARM (PC/AT ONLY) | |
CH = HOURS IN BCD | |
CL = MINUTES IN BCD | |
DH = SECONDS IN BCD | |
ON EXIT: | |
CY = 1 IF ALARM ALREADY SET OR CLOCK INOPERABLE| |
INT 4A OCCURS AT SPECIFIED ALARM TIME | |
| |
AH = 07 - RESET REAL TIME CLOCK ALARM | |
| |
AH = 08 - SET RTC ACTIVATED POWER ON MODE (CONVERTIBLE) | |
CH = HOURS IN BCD | |
CL = MINUTES IN BCD | |
DH = SECONDS IN BCD | |
| |
AH = 09 - READ RTC ALARM TIME AND STATUS (CONVERTIBLE) | |
ON EXIT: CH = HOURS IN BCD | |
CL = MINUTES IN BCD | |
DH = SECONDS IN BCD | |
DL = ALARM STATUS: | |
= 00 IF ALARM NOT ENABLED | |
= 01 IF ALARM ENABLED BUT WILL NOT POWER | |
UP SYSTEM | |
= 02 IF ALARM WILL POWER UP SYSTEM | |
| |
AH = 80 - SET UP SOUND MULTIPLEXOR (PCjr ONLY) | |
AL = 00 - SOURCE IS 8253 CHANNEL 2 | |
= 01 - SOURCE IS CASSETTE INPUT | |
= 02 - SOURCE IS I/O CHANNEL "AUDIO IN" | |
= 03 - SOURCE IS SOUND GENERATOR CHIP | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
9 | 10 |
INT 15 - SYSTEM SERVICES BIOS AH = 41 (CONTINUED) | ┌────────────────────────┐ |
| │ INT 16 - KEYBOARD BIOS │ |
BH = CONDITION COMPARE OR MASK VALUE | └────────────────────────┘ |
BL = TIMEOUT VALUE TIMES 55 MSEC. | |
= 0 IF NO TIME LIMIT | INPUT PARAMETERS: |
DX = I/O PORT ADDRESS (IF AL BIT 4 = 1) | |
ES:DI = POINTER TO USER BYTE (IF AL BIT 4 = 0) | AH = 00 - WAIT FOR KEYSTROKE AND READ |
| ON EXIT: |
AH = 42 - REQUEST SYSTEM POWER OFF (CONVERTIBLE ONLY) | AH = SCAN CODE |
AL = 00 TO USE SYSTEM PROFILE | AL = ASCII CHARACTER IF APPLICABLE |
= 01 TO FORCE SUSPEND REGARDLESS OF PROFILE | |
| AH = 01 - GET KEYSTROKE STATUS |
AH = 43 - READ SYSTEM STATUS (CONVERTIBLE ONLY) | ON EXIT: |
ON EXIT: AL = STATUS: | ZF = 0 IF KEY PRESSED |
┌─┬─┬─┬─┬─┬─┬─┬─┐ | AH = SCAN CODE |
│7│6│5│4│3│2│1│0│ AL | AL = ASCII CHARACTER IF APPLICABLE |
└─┴─┴─┴─┴─┴─┴─┴─┘ | NOTE: CODE NOT REMOVED FROM BUFFER |
│ │ │ │ │ │ │ │ | |
│ │ │ │ │ │ │ └───── LCD DETACHED | AH = 02 - GET SHIFT STATUS |
│ │ │ │ │ │ └─────── RESERVED | ON EXIT: |
│ │ │ │ │ └───────── RS232/PARALLEL POWERED ON| ┌─┬─┬─┬─┬─┬─┬─┬─┐ |
│ │ │ │ └─────────── INTERNAL MODEM POWERED ON| │7│6│5│4│3│2│1│0│ AL |
│ │ │ └───────────── POWER ACTIVATED BY ALARM | └─┴─┴─┴─┴─┴─┴─┴─┘ |
│ │ └─────────────── STANDBY POWER LOST | │ │ │ │ │ │ │ │ |
│ └───────────────── EXTERNAL POWER IN USE | │ │ │ │ │ │ │ └───── RIGHT SHIFT KEY DEPRESSED |
└─────────────────── BATTERY LOW | │ │ │ │ │ │ └─────── LEFT SHIFT KEY DEPRESSED |
| │ │ │ │ │ └───────── CONTROL SHIFT KEY DEPRESSED |
AH = 44 - (DE)ACTIVATE INTERNAL MODEM POWER (CONVERTIBLE)| │ │ │ │ └─────────── ALTERNATE SHIFT KEY DEPRESSED |
AL = 00 TO POWER OFF | │ │ │ └───────────── SCROLL LOCK STATE ACTIVE |
= 01 TO POWER ON | │ │ └─────────────── NUM LOCK STATE ACTIVE |
| │ └───────────────── CAPS LOCK STATE ACTIVE |
AH = 4F - KEYBOARD INTERCEPT | └─────────────────── INSERT STATE IS ACTIVE |
AL = SCAN CODE, CY=1 | |
ON EXIT: | AH = 04 - KEYBOARD CLICK ADJUSTMENT |
AL = SCAN CODE, CY=1 IF PROCESSING DESIRED | AL = 1 FOR CLICK ON, =0 FOR CLICK OFF |
| |
AH = 80 - DEVICE OPEN | AH = 05 - KEYBOARD BUFFER WRITE |
BX = DEVICE ID | CH = SCAN CODE |
CX = PROCESS ID | CL = ASCII CHARACTER |
| ON EXIT: |
AH = 81 - DEVICE CLOSE | AL = 01 IF BUFFER FULL |
BX = DEVICE ID | |
CX = PROCESS ID | AH = 10 - EXTENDED WAIT FOR KEYSTROKE AND READ |
| ON EXIT: |
AH = 82 - PROGRAM TERMINATION | AH = SCAN CODE |
BX = DEVICE ID | AL = ASCII CHARACTER IF APPLICABLE |
| |
AH = 83 - EVENT WAIT | AH = 11 - EXTENDED GET KEYSTROKE STATUS |
AL = 0 TO SET INTERVAL | ON EXIT: |
= 1 TO CANCEL | ZF = 0 IF KEY PRESSED |
ES:BX = POINTER TO MEMORY FLAG (BIT 7 IS SET | AH = SCAN CODE |
WHEN INTERVAL EXPIRES) | AL = ASCII CHARACTER IF APPLICABLE |
CX,DX = NUMBER OF MICROSECONDS TO WAIT | NOTE: CODE NOT REMOVED FROM BUFFER |
(GRANULARITY IS 976 MICROSECONDS) | |
ON EXIT: CY = 1 IF FUNCTION ALREADY BUSY | AH = 12 - EXTENDED GET SHIFT STATUS |
| ON EXIT: |
AH = 84 - JOYSTICK SUPPORT | ┌─┬─┬─┬─┬─┬─┬─┬─┐ |
DX = 0 TO READ THE CURRNENT SWITCH SETTINGS | │7│6│5│4│3│2│1│0│ AL |
ON EXIT: AL = SWITCH SETTINGS (BITS 7-4) | └─┴─┴─┴─┴─┴─┴─┴─┘ |
ON ENTRY: DX = 1 TO READ THE RESISTIVE INPUTS | │ │ │ │ │ │ │ │ |
ON EXIT: AX = A(X),BX = A(Y), CX = B(X), DX = B(Y) | │ │ │ │ │ │ │ └───── RIGHT SHIFT KEY DEPRESSED |
| │ │ │ │ │ │ └─────── LEFT SHIFT KEY DEPRESSED |
AH = 85 - SYSTEM REQUEST KEY PRESSED | │ │ │ │ │ └───────── CONTROL SHIFT KEY DEPRESSED |
AL = 00 MAKE OF KEY | │ │ │ │ └─────────── ALTERNATE SHIFT KEY DEPRESSED |
= 01 BREAK OF KEY | │ │ │ └───────────── SCROLL LOCK STATE ACTIVE |
| │ │ └─────────────── NUM LOCK STATE ACTIVE |
AH = 86 - ELAPSED TIME WAIT (PCAT AND AFTER) | │ └───────────────── CAPS LOCK STATE ACTIVE |
CL,DX = NUMBER OF MICROSECONDS TO WAIT | └─────────────────── INSERT STATE IS ACTIVE |
| |
AH = 87 - MOVE BLOCK TO/FROM EXTENDED MEMORY | ┌─┬─┬─┬─┬─┬─┬─┬─┐ |
CX = WORD COUNT OF BLOCK TO BE MOVED | │7│6│5│4│3│2│1│0│ AH |
ES:SI = POINTER TO GLOBAL DESCRIPTOR TABLE | └─┴─┴─┴─┴─┴─┴─┴─┘ |
| │ │ │ │ │ │ │ │ |
AH = 88 - EXTENDED MEMORY SIZE DETERMINE | │ │ │ │ │ │ │ └───── LEFT CONTROL KEY PRESSED |
ON EXIT: AX = NUMBER OF CONTIGUOUS 1K BLOCKS OF | │ │ │ │ │ │ └─────── LEFT ALT KEY DEPRESSED |
MEMORY STARTING AT ADDRESS 1024K | │ │ │ │ │ └───────── RIGHT CONTROL KEY PRESSED |
| │ │ │ │ └─────────── RIGHT ALT KEY DEPRESSED |
AH = 89 - SWITCH PROCESSOR TO PROTECTED MODE | │ │ │ └───────────── SCROLL LOCK KEY DEPRESSED |
ES:SI = POINTER TO GDT | │ │ └─────────────── NUM LOCK KEY DEPRESSED |
BH = OFFSET INTO IDT WHERE INTS 0-7 ARE | │ └───────────────── CAPS LOCK KEY DEPRESSED |
BL = OFFSET INTO IDT WHERE INTS 8-15 ARE | └─────────────────── SYSTEM REQUEST KEY DEPRESSED |
| |
AH = 90 - DEVICE BUSY | ┌───────────────────────┐ |
AL = TYPE CODE: | │ INT 17 - PRINTER BIOS │ |
= 00 - DISK | └───────────────────────┘ |
= 01 - DISKETTE | |
= 02 - KEYBOARD | AH = 00 - PRINT CHARACTER |
= 80 - NETWORK (ES:BX = NCB) | AL = CHARACTER TO PRINT |
= FC - DISK RESET | DX = PRINTER TO BE USED (0,1,2) |
= FD - DISKETTE MOTOR START | ON EXIT: |
= FE - PRINTER | AH = STATUS |
ON EXIT: CY = 1 IF WAIT TIME SATISFIED | |
| AH = 01 - INITIALIZE THE PRINTER PORT |
AH = 91 - INTERRUPT COMPLETE | DX = PRINTER PORT TO BE INITIALIZED (0,1,2)|
AL = TYPE CODE (SEE AH=90 ABOVE) | ON EXIT: |
| AH = STATUS |
AH = C0 - RETURN SYSTEM CONFIGURATION PARAMETERS | |
ON EXIT: ES:BX = POINTER TO SYSTEM DESCRIPTOR: | AH = 02 - READ PRINTER PORT STATUS |
WORD - LENGTH OF DESCRIPTOR | DX = PRINTER PORT TO BE USED (0,1,2) |
BYTE - MODEL BYTE | ON EXIT: |
BYTE - SECONDARY MODEL BYTE | AH = STATUS |
BYTE - BIOS REVISION LEVEL | |
BYTE - FEATURE INFORMATION: | ┌─┬─┬─┬─┬─┬─┬─┬─┐ |
┌─┬─┬─┬─┬─┬─┬─┬─┐ | │7│6│5│4│3│2│1│0│ PRINTER STATUS BITS |
│7│6│5│4│3│2│1│0│ FEATURE BYTE | └─┴─┴─┴─┴─┴─┴─┴─┘ |
└─┴─┴─┴─┴─┴─┴─┴─┘ | │ │ │ │ │ │ │ │ |
│ │ │ │ │ │ │ │ | │ │ │ │ │ │ │ └───── TIME OUT |
│ │ │ │ └─┴─┴─┴───── RESERVED | │ │ │ │ │ └─┴─────── NOT USED |
│ │ │ └───────────── INT 15 AH=4F USED| │ │ │ │ └─────────── I/O ERROR |
│ │ └─────────────── RTC PRESENT | │ │ │ └───────────── SELECTED |
│ └───────────────── 2ND 8259 PRESENT | │ │ └─────────────── OUT OF PAPER |
└─────────────────── DMA CHAN. 3 USED | │ └───────────────── ACKNOWLEDGE |
| └─────────────────── NOT BUSY |
| |
| |
| |
| |
| |
7 | 8 |
INT 13 - FIXED DISK BIOS (CONTINUED) | INT 14 - ASYNCHRONOUS COMMUNICATIONS BIOS (CONTINUED) |
| |
AH = 0A - READ LONG | AH = 01 - SEND CHARACTER IN AL |
ON EXIT: AL = NUMBER OF SECTORS ACTUALLY TRANSFERRED | ON EXIT: AH = LINE STATUS |
| |
AH = 0B - WRITE LONG | AH = 02 - RECEIVE CHARACTER IN AL |
ON EXIT: AL = NUMBER OF SECTORS ACTUALLY TRANSFERRED | ON EXIT: AH = LINE STATUS |
| |
AH = 0C - SEEK | AH = 03 - READ STATUS |
| ON EXIT: AH = LINE STATUS |
AH = 0D - ALTERNATE DISK RESET | AL = MODEM STATUS |
| |
AH = 0E - READ SECTOR BUFFER (XT, PORTABLE ONLY) | AH = 04 - EXTENDED INITIALIZE |
ON EXIT: AL = NUMBER OF SECTORS ACTUALLY TRANSFERRED | AL = BREAK STATUS |
| = 1 IF BREAK |
AH = 0F - WRITE SECTOR BUFFER (XT, PORTABLE ONLY) | = 0 IF NO BREAK |
ON EXIT: AL = NUMBER OF SECTORS ACTUALLY TRANSFERRED | BH = PARITY |
| = 0 - NO PARITY |
AH = 10 - TEST DRIVE READY | = 1 - ODD PARITY |
| = 2 - EVEN PARITY |
AH = 11 - RECALIBRATE | = 3 - STICK PARITY ODD |
| = 4 - STICK PARITY EVEN |
AH = 12 - CONTROLLER RAM DIAGNOSTIC (XT, PORTABLE ONLY) | BL = NUMBER OF STOP BITS |
| = 0 - ONE STOP BIT |
AH = 13 - DRIVE DIAGNOSTIC (XT, PORTABLE ONLY) | = 1 - 2 STOP BITS (1½ IF 5 BIT WORD LEN)|
| CH = WORD LENGTH |
AH = 14 - CONTROLLER INTERNAL DIAGNOSTIC | = 0 - 5 BITS |
| = 1 - 6 BITS |
AH = 15 - READ DASD TYPE (PC/AT ONLY) | = 2 - 7 BITS |
ON EXIT: AH = 00 IF DRIVE NOT PRESENT | = 3 - 8 BITS |
= 03 IF FIXED DISK PRESENT | CL = BAUD RATE |
CX,DX = NUMBER OF 512 BYTE BLOCKS | = 0 - 110 |
| = 1 - 150 |
AH = 16 - RESERVED FOR DISKETTE | = 2 - 300 |
| = 3 - 600 |
AH = 17 - RESERVED FOR DISKETTE | = 4 - 1200 |
| = 5 - 2400 |
AH = 18 - RESERVED FOR DISKETTE | = 6 - 4800 |
| = 7 - 9600 |
AH = 19 - PARK FIXED DISK HEADS (XT MODEL 286) | = 8 - 19200 |
| ON EXIT: |
| AL = MODEM STATUS |
┌───────────────────────────────────────────┐ | AH = LINE CONTROL STATUS |
│ INT 14 - ASYNCHRONOUS COMMUNICATIONS BIOS │ | |
└───────────────────────────────────────────┘ | AH = 05 - EXTENDED COMMUNICATION PORT CONTROL |
| AL = 00 - READ MODEM CONTROL REGISTER |
FOR INT 14 THE FOLLOWING STATUS IS DEFINED: | BL = MODEM CONTROL REG (SEE AL=1)|
| AL = 01 - WRITE MODEM CONTROL REGISTER |
┌─┬─┬─┬─┬─┬─┬─┬─┐ | BL = MODEM CONTRO REGISTER: |
│7│6│5│4│3│2│1│0│ MODEM STATUS | ┌─┬─┬─┬─┬─┬─┬─┬─┐ |
└─┴─┴─┴─┴─┴─┴─┴─┘ | │7│6│5│4│3│2│1│0│ BL (FOR AL=00 AND AL=01) |
│ │ │ │ │ │ │ │ | └─┴─┴─┴─┴─┴─┴─┴─┘ |
│ │ │ │ │ │ │ └───── DELTA CLEAR TO SEND | │ │ │ │ │ │ │ │ |
│ │ │ │ │ │ └─────── DELTA DATA SET READY | │ │ │ │ │ │ │ └───── DATA TERMINAL READY |
│ │ │ │ │ └───────── TRAILING EDGE RING DETECTOR | │ │ │ │ │ │ └─────── REQUEST TO SEND |
│ │ │ │ └─────────── DELTA RECEIVE LINE SIGNAL DET.| │ │ │ │ │ └───────── OUT1 |
│ │ │ └───────────── CLEAR TO SEND | │ │ │ │ └─────────── OUT2 |
│ │ └─────────────── DATA SET READY | │ │ │ └───────────── LOOP |
│ └───────────────── RING INDICATOR | └─┴─┴─────────────── RESERVED |
└─────────────────── RECEIVE LINE SIGNAL DETECT | ON EXIT: |
| AH = STATUS |
┌─┬─┬─┬─┬─┬─┬─┬─┐ | |
│7│6│5│4│3│2│1│0│ LINE STATUS | |
└─┴─┴─┴─┴─┴─┴─┴─┘ | ┌───────────────────────────────┐ |
│ │ │ │ │ │ │ │ | │ INT 15 - SYSTEM SERVICES BIOS │ |
│ │ │ │ │ │ │ └───── DATA READY | └───────────────────────────────┘ |
│ │ │ │ │ │ └─────── OVERRUN ERROR | |
│ │ │ │ │ └───────── PARITY ERROR | INPUT PARAMETERS: |
│ │ │ │ └─────────── FRAMING ERROR | |
│ │ │ └───────────── BREAK DETECT | AH = 00 - TURN CASSETTE MOTOR ON (PC,PCjr ONLY) |
│ │ └─────────────── TRANSMIT HOLDING REG. EMPTY | |
│ └───────────────── TRANSMIT SHIFT REGISTER EMPTY | AH = 01 - TURN CASSETTE MOTOR OFF (PC,PCjr ONLY) |
└─────────────────── TIME OUT * | |
| AH = 02 - READ BLOCKS FROM CASETTE (PC,PCjr ONLY) |
* NOTE: IF BIT 7 SET THEN OTHER BITS ARE INVALID | ES:BX = OFFSET OF DATA BUFFER |
| CX = COUNT OF BYTES TO READ |
ALL ROUTINES HAVE AH=FUNCTION NUMBER AND DX=RS232 CARD | ON EXIT: |
NUMBER (0 BASED). AL=CHARACTER TO SEND OR RECEIVED | ES:BX = OFFSET OF LAST BYTE READ+1 |
CHARACTER ON EXIT, UNLESS OTHERWISE NOTED. | DX = COUNT OF BYTES ACTUALLY READ |
| AH = ERROR CODE IF CY=1 |
AH = 00 - INITIALIZE COMMUNICATIONS PORT | |
AL = PARMS FOR INITIALIZATION: | AH = 03 - WRITE BLOCKS TO CASETTE (PC,PCjr ONLY) |
┌─┬─┬─┬─┬─┬─┬─┬─┐ | ES:BX = OFFSET OF DATA BUFFER |
│7│6│5│4│3│2│1│0│ AL | CX = COUNT OF BYTES TO WRITE |
└─┴─┴─┴─┴─┴─┴─┴─┘ | ON EXIT: |
│ │ │ │ │ │ │ │ | ES:BX = OFFSET OF LAST BYTE WRITTEN+1 |
│ │ │ │ │ │ └─┴───── WORD LENGTH | AH = ERROR CODE IF CY=1 |
│ │ │ │ │ └───────── STOP BITS | |
│ │ │ └─┴─────────── PARITY | AH = 40 - READ / MODIFY PROFILES (CONVERTIBLE ONLY) |
└─┴─┴─────────────── BAUD RATE | AL = 00 - RETURN SYSTEM PROFILE IN CX,BX |
| AL = 01 - MODIFY SYSTEM PROFILE |
WORD LENGTH: 10 = 7 BITS | CX,BX = PROFILE INFO |
11 = 8 BITS | AL = 02 - RET. INTERNAL MODEM PROFILE IN BX|
| AL = 03 - MODIFY INTERNAL MODEM PROFILE |
STOP BITS: 0 = 1 STOP BIT | BX = PROFILE INFO |
1 = 2 STOP BITS | |
| AH = 41 - WAIT ON EXTERNAL EVENT (CONVERTIBLE ONLY) |
PARITY: X0 = NONE | AL = CONDITION TYPE: |
01 = ODD | ┌─┬─┬─┬─┬─┬─┬─┬─┐ |
11 = EVEN | │7│6│5│4│3│2│1│0│ AL |
| └─┴─┴─┴─┴─┴─┴─┴─┘ |
BAUD RATE:000 = 110 BAUD | │ │ │ │ │ │ │ │ |
001 = 150 BAUD | │ │ │ │ │ └─┴─┴───── CONDITION TO WAIT FOR |
010 = 300 BAUD | │ │ │ │ └─────────── RESERVED |
011 = 600 BAUD | │ │ │ └───────────── 1=PORT ADDR./0=USER BYTE |
100 = 1200 BAUD | └─┴─┴─────────────── RESERVED |
101 = 2400 BAUD | |
110 = 4800 BAUD | CONDITION CODES: |
111 = 9600 BAUD | |
| 0 = ANY EXTERNAL EVENT |
ON EXIT: AL = MODEM STATUS | 1 = COMPARE AND RETURN IF EQUAL |
AH = LINE STATUS | 2 = COMPARE AND RETURN IF NOT EQUAL |
| 3 = TEST AND RETURN IF NOT ZERO |
| 4 = TEST AND RETURN IF ZERO |
| |
CONTINUED ON NEXT PANEL | |
| CONTINUED ON NEXT PANEL |
| |